1. Technical Field
The present invention relates to a method and apparatus for processing graphical data in general, and in particular to a method and apparatus for occlusion culling within a graphics processing system. Still more particularly, the present invention relates to a method and apparatus for accelerating occlusion culling in a graphics computer.
2. Description of the Related Art
In a graphics computer, a two-dimensional (2D) display screen is commonly used to display three-dimensional (3D) representations of an object. An object to be rendered is initially divided into multiple primitives. Primitives are basic components of a graphical object and may be defined by geometries of a point, a line, or a polygon. The primitives are subsequently fed through a graphics pipeline in which various types of graphical processing are performed and the results are then rendered on a 2D display screen.
Since each primitive may contain thousands of fragments, a relatively large amount of processing time can be spent to render all the fragments within a primitive. However, some of the processing time are wasted because not all of the primitives are ultimately visible to a viewer. For example, a car may have a hierarchical data structure with different groupings for components such as body panels, an engine, a drive train, wheels, etc. Some of the data structures, such as the engine, are quite complex and may potentially make up of thousands or millions of primitives. If the car is displayed from the top with the hood closed, a typical graphics computer may spend a large amount of time to process the multitude of primitives for the engine with the end result of not a single primitive for the engine needs to be displayed. Similarly, other portions of the automobile, such as the wheels or drive train, may also be entirely occluded. Needless to say, the amount of time spent on processing all of the occluded primitives greatly decreases the speed and efficiency of the typical graphics computer.
Consequently, it would be desirable to provide a method and apparatus for accelerating occlusion culling in a graphics computer.